﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Actuals.CoreDomain.Business
{
    public interface IBusinessActual
    {
        IList<IActual> GetActuals(DateTime FromDate, DateTime ToDate, int ProjectId, int ReleaseId);
        IList<IActual> GetActualsOnlyForDevelopers(DateTime FromDate, DateTime ToDate, int ProjectId, int ReleaseId);
        IList<IActual> GetActualsForAWeek(int EmployeeId, int ProjectId, int ReleaseId);
        IList<IActual> GetActualsByTaskId(DateTime fromDate, DateTime toDate, int taskId);
        IList<IActual> GetActualsForEmployee(DateTime fromDate, DateTime toDate, int projectId, int releaseId,
                                             int employeeId);

        IList<IActualBreakDownByEmployee> GetActualsGroupByDevelopers(DateTime fromDate, DateTime toDate, int projectId,
                                                                      int releaseId);
        bool AddActual(IActual actual);
        bool DeleteActual(int actualId);
        bool UpdateActual(IActual actual);
        IActual GetActual(Int64 actualId);
        bool BtnAddActualDisable(int projectId, int releaseId);
    }
}
